/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package university.location;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import org.postgis.PGgeometry;

/**
 *
 * @author emojica
 */
@ManagedBean(name = "university_basedBeans")
@ViewScoped
public class Beans {

    private Integer id = 0;
    private Integer id_universidad = 0;
    private Integer id_corregimiento = 0;
    private String nombre = "";
    private String direccion = "";
    private PGgeometry geometry;
    private university.general.Beans universityBeans = new university.general.Beans();
    private location.general.Beans countryBeans = new location.general.Beans();
    private location.province.Beans provinceBeans = new location.province.Beans();
    private location.district.Beans districtBeans = new location.district.Beans();
    private location.township.Beans townshipBeans = new location.township.Beans();

    public Beans() {
    }

    public Beans(Integer id, Integer id_universidad, Integer id_corregimiento, String nombre_corregimiento,
            String nombre, String direccion, Integer id_distrito, String nombre_distrito,
            Integer id_provincia, String nombre_provincia, Integer id_pais, String nombre_pais, String nombreuniversidad, Object object) {
        this.id = id;
        this.id_universidad = id_universidad;
        this.id_corregimiento = id_corregimiento;
        this.nombre = nombre;
        this.direccion = direccion;

        this.districtBeans.setId(id_distrito);
        this.districtBeans.setNombre(nombre_distrito);
        this.townshipBeans.setNombre(nombre_corregimiento);
        this.provinceBeans.setId(id_provincia);
        this.provinceBeans.setNombre(nombre_provincia);
        this.countryBeans.setId(id_pais);
        this.countryBeans.setNombre(nombre_pais);
        this.universityBeans.setNombre(nombreuniversidad);
        this.geometry = (PGgeometry) object;
    }

    public void clearBeans() {
        setId(0);
        setId_Corregimiento(0);
        setId_universidad(0);
        setDireccion("");
        setNombre("");
        this.getProvinceBeans().clearBeans();
        this.universityBeans.clearBeans();
        this.getCountryBeans().clearBeans();
        this.getDistrictBeans().clearBeans();
        this.getTownshipBeans().clearBeans();
    }

    private String strScape(String str) {
        str = str.trim();
        str = str.replace("'", "\'");
        str = str.replace("\\", "\\\\");
        return str;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getId() {
        return this.id;
    }

    public void setId_Corregimiento(Integer corregimiento) {
        this.id_corregimiento = corregimiento;
    }

    public Integer getId_Corregimiento() {
        return this.id_corregimiento;
    }

    public void setId_universidad(Integer id_universidad) {
        this.id_universidad = id_universidad;
    }

    public Integer getId_universidad() {
        return this.id_universidad;
    }

    public void setDireccion(String lugar) {
        this.direccion = strScape(lugar);
    }

    public String getDireccion() {
        return this.direccion;
    }

    public String getNombre() {
        return nombre;
    }

    public void setNombre(String nombre) {
        this.nombre = nombre;
    }

    public university.general.Beans getUniversityBeans() {
        return universityBeans;
    }

    public location.general.Beans getCountryBeans() {
        return countryBeans;
    }

    public location.province.Beans getProvinceBeans() {
        return provinceBeans;
    }

    public location.district.Beans getDistrictBeans() {
        return districtBeans;
    }

    public location.township.Beans getTownshipBeans() {
        return townshipBeans;
    }

    public PGgeometry getGeometry() {
        return geometry;
    }

    public void setGeometry(PGgeometry geometry) {
        this.geometry = geometry;
    }
}
